# demo01_oop_test.py
### 练习 3：编写游戏人物    09:18
# **需求：**
# - 创建 游戏角色类(Role)
# - 游戏人物角色拥有   名字(name)、武器(weapon) 等属性
# - 游戏人物具有攻击(  def attack   )的方法
#        打印  我是谁   用什么武器  攻击 谁
# - 武器通过武器类(Weapon)实现  名称(wname)  攻击力(strength)
# 组合
class Weapon:
    def __init__(self, wname, strength):
        self.wname = wname
        self.strength = strength
class Role:
    # self.weapon = Weapon
    def __init__(self, name, weapon):
        self.name = name
        self.weapon = weapon
    def attack(self, target):
        print("我是 %s 用 %s 武器  攻击 %s  掉了 %s 血" %(self.name, self.weapon.wname, target, self.weapon.strength))
if __name__ == '__main__':
    w1 = Weapon("丈八蛇矛", 98)
    r2 = Role("张飞", w1)  # self.name = "张飞"  self.weapon = w1
    r2.attack("张苞")
    # r1 = Role("张飞", "丈八蛇矛")
    # print(r1.weapon, type(r1.weapon))
    # r1.attack("张苞")







